package com.sunda.spmsoversea.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 海外仓交货单表(空运人带/转储/本地采购)
 * </p>
 *
 * @author Wayne
 * @since 2021-12-14
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("OVERSEA_DN")
@ApiModel(value="OverseaDn对象", description="海外仓交货单表(空运人带/转储/本地采购)")
public class OverseaDn implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "交货单号uuid")
    @TableId("UUID_DELIVERY_NOTE")
    private String uuidDeliveryNote;

    @ApiModelProperty(value = "交货单号")
    @TableField("SAP_DELIVERY_NOTE")
    private String sapDeliveryNote;

    @ApiModelProperty(value = "SPMS收货单据状态(默认0待到货;1入库中/审批不通过;2入库完成/待审批;3审批通过;4按应收提交SAP成功/SPMS按实收入库存;5按应收提交SAP失败;6收货少收提交SAP失败;7收货少收提交SAP成功;8提交SAP完成;9收货完成;10关闭/废单;)")
    @TableField("SPMS_STATUS")
    private String spmsStatus;

    @ApiModelProperty(value = "收货工厂")
    @TableField("WERKS_RECEIVE")
    private String werksReceive;

    @ApiModelProperty(value = "收货仓库地址")
    @TableField("WHS_LOCATION_CODE_RECEIVE")
    private String whsLocationCodeReceive;

    @ApiModelProperty(value = "DN创建日期")
    @TableField("SAP_CREATE_DATE")
    private String sapCreateDate;

    @ApiModelProperty(value = "SAP DN交货日期")
    @TableField("DELIVERY_DATE")
    private String deliveryDate;

    @ApiModelProperty(value = "到货日期(用户确认到货日期)")
    @TableField("ARRIVAL_DATE")
    private String arrivalDate;

    @ApiModelProperty(value = "SPMS备注信息")
    @TableField("REMARKS")
    private String remarks;

    @ApiModelProperty(value = "SPMS评论/预留")
    @TableField("COMMENTS")
    private String comments;

    @ApiModelProperty(value = "操作员")
    @TableField("OPERATE_USER")
    private String operateUser;

    @ApiModelProperty(value = "过账日期/按应收入库凭证")
    @TableField("POSTING_DATE")
    private String postingDate;

    @ApiModelProperty(value = "SAP凭证号/按应收入库凭证")
    @TableField("SAP_VOUCHER_NUMBER")
    private String sapVoucherNumber;

    @ApiModelProperty(value = "SAP凭证年份/按应收入库凭证")
    @TableField("SAP_VOUCHER_YEAR")
    private String sapVoucherYear;

    @ApiModelProperty(value = "撤销SAP过账日期/按应收入库凭证")
    @TableField("CANCEL_POSTING_DATE")
    private String cancelPostingDate;

    @ApiModelProperty(value = "撤销SAP凭证/按应收入库凭证")
    @TableField("CANCEL_VOUCHER_NUMBER")
    private String cancelVoucherNumber;

    @ApiModelProperty(value = "撤销SAP凭证年份/按应收入库凭证")
    @TableField("CANCEL_VOUCHER_YEAR")
    private String cancelVoucherYear;

    @ApiModelProperty(value = "SAP凭证号/少收凭证")
    @TableField("UNDER_VOUCHER_NUMBER")
    private String underVoucherNumber;

    @ApiModelProperty(value = "SAP凭证年份/少收凭证")
    @TableField("UNDER_VOUCHER_YEAR")
    private String underVoucherYear;

    @ApiModelProperty(value = "SAP过账日期/少收凭证")
    @TableField("UNDER_POSTING_DATE")
    private String underPostingDate;

    @ApiModelProperty(value = "撤销SAP过账日期/少收凭证")
    @TableField("CANCEL_UNDER_POSTING_DATE")
    private String cancelUnderPostingDate;

    @ApiModelProperty(value = "撤销SAP凭证/少收凭证")
    @TableField("CANCEL_UNDER_VOUCHER_NUMBER")
    private String cancelUnderVoucherNumber;

    @ApiModelProperty(value = "撤销SAP凭证年份/少收凭证")
    @TableField("CANCEL_UNDER_VOUCHER_YEAR")
    private String cancelUnderVoucherYear;

    @ApiModelProperty(value = "成本中心")
    @TableField("COST_CENTER")
    private String costCenter;

    @ApiModelProperty(value = "数据状态(默认0能被SAP更新数据；1禁止更新数据；)")
    @TableField("DATA_STATUS")
    private String dataStatus;

    @ApiModelProperty(value = "数据版本号")
    @TableField("DATA_VERSION")
    private Integer dataVersion;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATE_TIME")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    @TableField("UPDATE_TIME")
    private Date updateTime;

    @ApiModelProperty(value = "业务标识(01空运人带;02本地采购;03海外转储;05退货订单;)")
    @TableField("BUSINESS_TYPE")
    private String businessType;


}
